Self Organizing Map¶

In [ ]:
# initializing
from SOM import SOM
from dataloader import DataLoader
import numpy as np

We are using the data of CO2 global emmisions.

In [ ]:
CO2_data = DataLoader(data_path='co2-emissions-per-country.csv')
CO2_data.load_data()
In [ ]:
# Data is organized according to the year
CO2_data.data.keys()
Out[ ]:
dict_keys(['1949', '1950', '1951', '1952', '1953', '1954', '1955', '1956', '1957', '1958', '1959', '1960', '1961', '1962', '1963', '1964', '1965', '1966', '1967', '1968', '1969', '1970', '1971', '1972', '1973', '1974', '1975', '1976', '1977', '1978', '1979', '1980', '1981', '1982', '1983', '1984', '1985', '1986', '1987', '1988', '1989', '1990', '1991', '1992', '1993', '1994', '1995', '1996', '1997', '1998', '1999', '2000', '2001', '2002', '2003', '2004', '2005', '2006', '2007', '2008', '2009', '2010', '2011', '2012', '2013', '2014', '2015', '2016', '2017', '2018', '2019', '2020', '1933', '1934', '1935', '1936', '1937', '1938', '1939', '1940', '1941', '1942', '1943', '1944', '1945', '1946', '1947', '1948', '1916', '1917', '1918', '1919', '1920', '1921', '1922', '1923', '1924', '1925', '1926', '1927', '1928', '1929', '1930', '1931', '1932', '1887', '1888', '1889', '1890', '1891', '1892', '1893', '1894', '1895', '1896', '1897', '1898', '1899', '1900', '1901', '1902', '1903', '1904', '1905', '1906', '1907', '1908', '1909', '1910', '1911', '1912', '1913', '1914', '1915', '1830', '1831', '1832', '1833', '1850', '1855', '1858', '1859', '1860', '1861', '1862', '1863', '1864', '1865', '1866', '1867', '1868', '1869', '1870', '1871', '1872', '1873', '1874', '1875', '1876', '1877', '1878', '1879', '1880', '1881', '1882', '1883', '1884', '1885', '1886', '1807', '1819', '1820', '1821', '1822', '1823', '1824', '1825', '1826', '1827', '1828', '1829', '1834', '1835', '1836', '1837', '1838', '1839', '1840', '1841', '1842', '1843', '1844', '1845', '1846', '1847', '1848', '1849', '1851', '1852', '1853', '1854', '1856', '1857', '1802', '1785', '1786', '1787', '1788', '1789', '1790', '1791', '1792', '1793', '1794', '1795', '1796', '1797', '1798', '1799', '1800', '1801', '1803', '1804', '1805', '1806', '1808', '1809', '1810', '1811', '1812', '1813', '1814', '1815', '1816', '1817', '1818', '1750', '1751', '1752', '1753', '1754', '1755', '1756', '1757', '1758', '1759', '1760', '1761', '1762', '1763', '1764', '1765', '1766', '1767', '1768', '1769', '1770', '1771', '1772', '1773', '1774', '1775', '1776', '1777', '1778', '1779', '1780', '1781', '1782', '1783', '1784'])
In [ ]:
year_2020 = np.array(CO2_data.data['2020'])
num_rows = year_2020.shape[0]
num_cols = year_2020.shape[1]

print("Data Attributes: ", num_cols)
print("Countries: ", num_rows)
Data Attributes:  4
Countries:  214
In [ ]:
year_2020[0:10]
Out[ ]:
array([['AFG', '1.2160286', '0.03', '0.3124'],
       ['ALB', '0.4534673', '0.01', '1.5757'],
       ['DZA', '15.499546', '0.45', '3.5346'],
       ['AND', '0.0466294', '0.0', '6.035'],
       ['AGO', '2.2198161', '0.06', '0.6754'],
       ['AIA', '0.0123426', '0.0', '8.2273'],
       ['ATG', '0.043041', '0.0', '1.0285'],
       ['ARG', '15.6978063', '0.45', '0.0186'],
       ['ARM', '0.5890292', '0.02', '10.8692'],
       ['ABW', '0.0753218', '0.0', '0.0507']], dtype='<U32')
In [ ]:
for key in list(CO2_data.data.keys()):
    print("Year: ", key)
    year = np.array(CO2_data.data[key])
    num_rows = year.shape[0]
    num_cols = year.shape[1]
    # for better results size of the map must be of the same size as labels
    map_size = (15, 15, num_cols-1)
    som = SOM(map_size=map_size ,learning_rate=0.1,epochs=1000)
    som.train(year, with_labels=True, with_plot=False)
    som.plot_map(save=True, filename="CO2_map"+key+".png")
    som.save_map(filename="Maps/CO2_map"+key+".json")
Year:  1949
(103, 3)
Started training...
100%|██████████| 1000/1000 [00:14<00:00, 69.47it/s]
File Saved!
Year:  1950
(163, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.91it/s]
File Saved!
Year:  1951
(164, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 43.83it/s]
File Saved!
Year:  1952
(164, 3)
Started training...
100%|██████████| 1000/1000 [00:26<00:00, 38.03it/s]
File Saved!
Year:  1953
(165, 3)
Started training...
100%|██████████| 1000/1000 [00:26<00:00, 37.48it/s]
File Saved!
Year:  1954
(167, 3)
Started training...
100%|██████████| 1000/1000 [00:30<00:00, 33.26it/s]
File Saved!
Year:  1955
(171, 3)
Started training...
100%|██████████| 1000/1000 [00:44<00:00, 22.69it/s]
File Saved!
Year:  1956
(171, 3)
Started training...
100%|██████████| 1000/1000 [00:39<00:00, 25.21it/s]
File Saved!
Year:  1957
(172, 3)
Started training...
100%|██████████| 1000/1000 [00:27<00:00, 36.01it/s]
File Saved!
Year:  1958
(178, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.77it/s]
File Saved!
Year:  1959
(186, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 40.34it/s]
File Saved!
Year:  1960
(186, 3)
Started training...
100%|██████████| 1000/1000 [00:27<00:00, 35.90it/s]
File Saved!
Year:  1961
(187, 3)
Started training...
100%|██████████| 1000/1000 [00:31<00:00, 31.75it/s]
File Saved!
Year:  1962
(189, 3)
Started training...
100%|██████████| 1000/1000 [00:31<00:00, 32.02it/s]
File Saved!
Year:  1963
(190, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 43.59it/s]
File Saved!
Year:  1964
(193, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.27it/s]
File Saved!
Year:  1965
(193, 3)
Started training...
100%|██████████| 1000/1000 [00:26<00:00, 37.15it/s]
File Saved!
Year:  1966
(193, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 43.28it/s]
File Saved!
Year:  1967
(193, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 38.51it/s]
File Saved!
Year:  1968
(194, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 44.93it/s]
File Saved!
Year:  1969
(194, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 40.26it/s]
File Saved!
Year:  1970
(197, 3)
Started training...
100%|██████████| 1000/1000 [00:26<00:00, 38.43it/s]
File Saved!
Year:  1971
(198, 3)
Started training...
100%|██████████| 1000/1000 [00:28<00:00, 35.41it/s]
File Saved!
Year:  1972
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.14it/s]
File Saved!
Year:  1973
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:27<00:00, 35.94it/s]
File Saved!
Year:  1974
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:35<00:00, 28.16it/s]
File Saved!
Year:  1975
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:30<00:00, 33.33it/s]
File Saved!
Year:  1976
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 41.98it/s]
File Saved!
Year:  1977
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:27<00:00, 36.48it/s]
File Saved!
Year:  1978
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:32<00:00, 31.21it/s]
File Saved!
Year:  1979
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:29<00:00, 33.84it/s]
File Saved!
Year:  1980
(199, 3)
Started training...
100%|██████████| 1000/1000 [00:34<00:00, 29.14it/s]
File Saved!
Year:  1981
(201, 3)
Started training...
100%|██████████| 1000/1000 [00:33<00:00, 29.77it/s]
File Saved!
Year:  1982
(201, 3)
Started training...
100%|██████████| 1000/1000 [00:20<00:00, 48.03it/s]
File Saved!
Year:  1983
(201, 3)
Started training...
100%|██████████| 1000/1000 [00:21<00:00, 46.18it/s]
File Saved!
Year:  1984
(200, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 43.56it/s]
File Saved!
Year:  1985
(200, 3)
Started training...
100%|██████████| 1000/1000 [00:21<00:00, 46.40it/s]
File Saved!
Year:  1986
(200, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 42.41it/s]
File Saved!
Year:  1987
(201, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 42.52it/s]
File Saved!
Year:  1988
(201, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 41.30it/s]
File Saved!
Year:  1989
(201, 3)
Started training...
100%|██████████| 1000/1000 [00:20<00:00, 49.23it/s]
File Saved!
Year:  1990
(209, 3)
Started training...
100%|██████████| 1000/1000 [00:21<00:00, 46.39it/s]
File Saved!
Year:  1991
(210, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 43.11it/s]
File Saved!
Year:  1992
(212, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.11it/s]
File Saved!
Year:  1993
(212, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.60it/s]
File Saved!
Year:  1994
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 41.13it/s]
File Saved!
Year:  1995
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 41.74it/s]
File Saved!
Year:  1996
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 44.56it/s]
File Saved!
Year:  1997
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 44.33it/s]
File Saved!
Year:  1998
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 41.02it/s]
File Saved!
Year:  1999
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:23<00:00, 42.20it/s]
File Saved!
Year:  2000
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 40.28it/s]
File Saved!
Year:  2001
(213, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.49it/s]
File Saved!
Year:  2002
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:27<00:00, 36.94it/s]
File Saved!
Year:  2003
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 40.38it/s]
File Saved!
Year:  2004
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:25<00:00, 39.95it/s]
File Saved!
Year:  2005
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:26<00:00, 37.99it/s]
File Saved!
Year:  2006
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:42<00:00, 23.48it/s]
File Saved!
Year:  2007
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:54<00:00, 18.42it/s]
File Saved!
Year:  2008
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:49<00:00, 20.08it/s]
File Saved!
Year:  2009
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:38<00:00, 26.06it/s]
File Saved!
Year:  2010
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:35<00:00, 28.35it/s]
File Saved!
Year:  2011
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:34<00:00, 28.62it/s]
File Saved!
Year:  2012
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:38<00:00, 26.08it/s]
File Saved!
Year:  2013
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:33<00:00, 29.81it/s]
File Saved!
Year:  2014
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:24<00:00, 40.60it/s]
File Saved!
Year:  2015
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:27<00:00, 36.24it/s]
File Saved!
Year:  2016
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:22<00:00, 43.93it/s]
File Saved!
Year:  2017
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:26<00:00, 38.13it/s]
File Saved!
Year:  2018
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:31<00:00, 31.63it/s]
File Saved!
Year:  2019
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:34<00:00, 29.20it/s]
File Saved!
Year:  2020
(214, 3)
Started training...
100%|██████████| 1000/1000 [00:39<00:00, 25.49it/s]
File Saved!
Year:  1933
(92, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 96.24it/s]
File Saved!
Year:  1934
(91, 3)
Started training...
100%|██████████| 1000/1000 [00:14<00:00, 68.70it/s]
File Saved!
Year:  1935
(91, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 85.91it/s]
File Saved!
Year:  1936
(92, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 86.41it/s]
File Saved!
Year:  1937
(92, 3)
Started training...
100%|██████████| 1000/1000 [00:12<00:00, 79.06it/s]
File Saved!
Year:  1938
(92, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 75.95it/s]
File Saved!
Year:  1939
(94, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 93.22it/s]
File Saved!
Year:  1940
(93, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 104.04it/s]
File Saved!
Year:  1941
(91, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 101.14it/s]
File Saved!
Year:  1942
(87, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 112.57it/s]
File Saved!
Year:  1943
(96, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 75.85it/s]
File Saved!
Year:  1944
(95, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 76.89it/s]
File Saved!
Year:  1945
(96, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 73.01it/s]
File Saved!
Year:  1946
(98, 3)
Started training...
100%|██████████| 1000/1000 [00:12<00:00, 77.15it/s]
File Saved!
Year:  1947
(103, 3)
Started training...
100%|██████████| 1000/1000 [00:14<00:00, 69.82it/s]
File Saved!
Year:  1948
(104, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 90.06it/s]
File Saved!
Year:  1916
(64, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 88.33it/s]
File Saved!
Year:  1917
(63, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 112.39it/s]
File Saved!
Year:  1918
(65, 3)
Started training...
100%|██████████| 1000/1000 [00:17<00:00, 57.03it/s]
File Saved!
Year:  1919
(70, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 73.20it/s]
File Saved!
Year:  1920
(73, 3)
Started training...
100%|██████████| 1000/1000 [00:16<00:00, 62.42it/s]
File Saved!
Year:  1921
(73, 3)
Started training...
100%|██████████| 1000/1000 [00:14<00:00, 67.56it/s]
File Saved!
Year:  1922
(71, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 110.34it/s]
File Saved!
Year:  1923
(71, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 114.69it/s]
File Saved!
Year:  1924
(72, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 96.74it/s]
File Saved!
Year:  1925
(72, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 91.79it/s]
File Saved!
Year:  1926
(76, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 73.61it/s]
File Saved!
Year:  1927
(78, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 87.26it/s]
File Saved!
Year:  1928
(82, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 98.77it/s] 
File Saved!
Year:  1929
(82, 3)
Started training...
100%|██████████| 1000/1000 [00:14<00:00, 69.58it/s]
File Saved!
Year:  1930
(83, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 73.83it/s]
File Saved!
Year:  1931
(86, 3)
Started training...
100%|██████████| 1000/1000 [00:20<00:00, 49.64it/s]
File Saved!
Year:  1932
(87, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 72.13it/s]
File Saved!
Year:  1887
(45, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 112.46it/s]
File Saved!
Year:  1888
(46, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 121.64it/s]
File Saved!
Year:  1889
(46, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 108.39it/s]
File Saved!
Year:  1890
(53, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 117.66it/s]
File Saved!
Year:  1891
(54, 3)
Started training...
100%|██████████| 1000/1000 [00:14<00:00, 71.31it/s]
File Saved!
Year:  1892
(55, 3)
Started training...
100%|██████████| 1000/1000 [00:18<00:00, 55.03it/s]
File Saved!
Year:  1893
(55, 3)
Started training...
100%|██████████| 1000/1000 [00:15<00:00, 63.59it/s]
File Saved!
Year:  1894
(55, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 90.14it/s]
File Saved!
Year:  1895
(56, 3)
Started training...
100%|██████████| 1000/1000 [00:15<00:00, 63.19it/s]
File Saved!
Year:  1896
(57, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 89.35it/s]
File Saved!
Year:  1897
(57, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 84.99it/s]
File Saved!
Year:  1898
(57, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 114.74it/s]
File Saved!
Year:  1899
(58, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 119.61it/s]
File Saved!
Year:  1900
(57, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 108.28it/s]
File Saved!
Year:  1901
(58, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 112.54it/s]
File Saved!
Year:  1902
(59, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 121.82it/s]
File Saved!
Year:  1903
(59, 3)
Started training...
100%|██████████| 1000/1000 [00:11<00:00, 88.85it/s]
File Saved!
Year:  1904
(60, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 117.88it/s]
File Saved!
Year:  1905
(61, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 97.49it/s]
File Saved!
Year:  1906
(60, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 76.76it/s]
File Saved!
Year:  1907
(60, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 71.68it/s]
File Saved!
Year:  1908
(61, 3)
Started training...
100%|██████████| 1000/1000 [00:10<00:00, 94.20it/s]
File Saved!
Year:  1909
(63, 3)
Started training...
100%|██████████| 1000/1000 [00:13<00:00, 75.43it/s]
File Saved!
Year:  1910
(64, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 114.43it/s]
File Saved!
Year:  1911
(64, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 100.19it/s]
File Saved!
Year:  1912
(64, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 101.31it/s]
File Saved!
Year:  1913
(67, 3)
Started training...
100%|██████████| 1000/1000 [00:20<00:00, 48.51it/s]
File Saved!
Year:  1914
(61, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 112.58it/s]
File Saved!
Year:  1915
(62, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 109.60it/s]
File Saved!
Year:  1830
(26, 3)
Started training...
100%|██████████| 1000/1000 [00:03<00:00, 252.64it/s]
File Saved!
Year:  1831
(26, 3)
Started training...
100%|██████████| 1000/1000 [00:05<00:00, 171.72it/s]
File Saved!
Year:  1832
(25, 3)
Started training...
100%|██████████| 1000/1000 [00:03<00:00, 280.62it/s]
File Saved!
Year:  1833
(25, 3)
Started training...
100%|██████████| 1000/1000 [00:04<00:00, 220.83it/s]
File Saved!
Year:  1850
(29, 3)
Started training...
100%|██████████| 1000/1000 [00:03<00:00, 270.65it/s]
File Saved!
Year:  1855
(29, 3)
Started training...
100%|██████████| 1000/1000 [00:05<00:00, 183.34it/s]
File Saved!
Year:  1858
(32, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 135.86it/s]
File Saved!
Year:  1859
(32, 3)
Started training...
100%|██████████| 1000/1000 [00:04<00:00, 223.64it/s]
File Saved!
Year:  1860
(37, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 155.77it/s]
File Saved!
Year:  1861
(37, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 145.36it/s]
File Saved!
Year:  1862
(37, 3)
Started training...
100%|██████████| 1000/1000 [00:05<00:00, 183.28it/s]
File Saved!
Year:  1863
(37, 3)
Started training...
100%|██████████| 1000/1000 [00:04<00:00, 201.33it/s]
File Saved!
Year:  1864
(37, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 140.43it/s]
File Saved!
Year:  1865
(38, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 160.98it/s]
File Saved!
Year:  1866
(38, 3)
Started training...
100%|██████████| 1000/1000 [00:05<00:00, 194.33it/s]
File Saved!
Year:  1867
(38, 3)
Started training...
100%|██████████| 1000/1000 [00:04<00:00, 230.83it/s]
File Saved!
Year:  1868
(39, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 148.23it/s]
File Saved!
Year:  1869
(39, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 119.68it/s]
File Saved!
Year:  1870
(40, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 122.27it/s]
File Saved!
Year:  1871
(40, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 125.12it/s]
File Saved!
Year:  1872
(40, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 136.51it/s]
File Saved!
Year:  1873
(40, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 101.99it/s]
File Saved!
Year:  1874
(40, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 109.40it/s]
File Saved!
Year:  1875
(40, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 124.90it/s]
File Saved!
Year:  1876
(39, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 119.84it/s]
File Saved!
Year:  1877
(39, 3)
Started training...
100%|██████████| 1000/1000 [00:05<00:00, 168.29it/s]
File Saved!
Year:  1878
(41, 3)
Started training...
100%|██████████| 1000/1000 [00:08<00:00, 114.82it/s]
File Saved!
Year:  1879
(42, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 126.93it/s]
File Saved!
Year:  1880
(42, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 147.05it/s]
File Saved!
Year:  1881
(43, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 134.19it/s]
File Saved!
Year:  1882
(42, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 145.17it/s]
File Saved!
Year:  1883
(43, 3)
Started training...
100%|██████████| 1000/1000 [00:06<00:00, 147.27it/s]
File Saved!
Year:  1884
(44, 3)
Started training...
100%|██████████| 1000/1000 [00:07<00:00, 126.72it/s]
File Saved!
Year:  1885
(50, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 100.49it/s]
File Saved!
Year:  1886
(44, 3)
Started training...
100%|██████████| 1000/1000 [00:09<00:00, 106.92it/s]
File Saved!
Year:  1807
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 497.42it/s]
File Saved!
Year:  1819
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 478.27it/s]
File Saved!
Year:  1820
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 385.55it/s]
File Saved!
Year:  1821
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 434.90it/s]
File Saved!
Year:  1822
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 427.73it/s]
File Saved!
Year:  1823
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 371.37it/s]
File Saved!
Year:  1824
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 490.75it/s]
File Saved!
Year:  1825
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 391.53it/s]
File Saved!
Year:  1826
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 548.72it/s]
File Saved!
Year:  1827
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 487.61it/s]
File Saved!
Year:  1828
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 742.04it/s]
File Saved!
Year:  1829
(8, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 495.40it/s]
File Saved!
Year:  1834
(11, 3)
Started training...
100%|██████████| 1000/1000 [00:03<00:00, 314.01it/s]
File Saved!
Year:  1835
(11, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 334.04it/s]
File Saved!
Year:  1836
(11, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 428.51it/s]
File Saved!
Year:  1837
(11, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 535.98it/s]
File Saved!
Year:  1838
(11, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 490.65it/s]
File Saved!
Year:  1839
(12, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 465.91it/s]
File Saved!
Year:  1840
(12, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 494.82it/s]
File Saved!
Year:  1841
(12, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 403.00it/s]
File Saved!
Year:  1842
(12, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 431.14it/s]
File Saved!
Year:  1843
(13, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 460.85it/s]
File Saved!
Year:  1844
(13, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 402.99it/s]
File Saved!
Year:  1845
(13, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 400.13it/s]
File Saved!
Year:  1846
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 417.94it/s]
File Saved!
Year:  1847
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 376.56it/s]
File Saved!
Year:  1848
(13, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 425.16it/s]
File Saved!
Year:  1849
(13, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 446.27it/s]
File Saved!
Year:  1851
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 390.86it/s]
File Saved!
Year:  1852
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 378.45it/s]
File Saved!
Year:  1853
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 384.57it/s]
File Saved!
Year:  1854
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 437.16it/s]
File Saved!
Year:  1856
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 421.03it/s]
File Saved!
Year:  1857
(14, 3)
Started training...
100%|██████████| 1000/1000 [00:02<00:00, 385.05it/s]
File Saved!
Year:  1802
(7, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 586.63it/s]
File Saved!
Year:  1785
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3438.22it/s]
File Saved!
Year:  1786
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1770.43it/s]
File Saved!
Year:  1787
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1724.63it/s]
File Saved!
Year:  1788
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1702.23it/s]
File Saved!
Year:  1789
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1392.60it/s]
File Saved!
Year:  1790
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3871.46it/s]
File Saved!
Year:  1791
(2, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2071.30it/s]
File Saved!
Year:  1792
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 771.10it/s]
File Saved!
Year:  1793
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 972.69it/s]
File Saved!
Year:  1794
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 902.55it/s]
File Saved!
Year:  1795
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 841.34it/s]
File Saved!
Year:  1796
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 768.20it/s]
File Saved!
Year:  1797
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1387.48it/s]
File Saved!
Year:  1798
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2264.21it/s]
File Saved!
Year:  1799
(3, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1177.81it/s]
File Saved!
Year:  1800
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 647.16it/s]
File Saved!
Year:  1801
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 813.25it/s]
File Saved!
Year:  1803
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 739.42it/s]
File Saved!
Year:  1804
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 672.14it/s]
File Saved!
Year:  1805
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 670.66it/s]
File Saved!
Year:  1806
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 846.85it/s]
File Saved!
Year:  1808
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 798.11it/s]
File Saved!
Year:  1809
(5, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 643.48it/s]
File Saved!
Year:  1810
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 719.13it/s]
File Saved!
Year:  1811
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 686.02it/s]
File Saved!
Year:  1812
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 724.36it/s]
File Saved!
Year:  1813
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 697.76it/s]
File Saved!
Year:  1814
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 991.63it/s]
File Saved!
Year:  1815
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 523.36it/s]
File Saved!
Year:  1816
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 745.27it/s]
File Saved!
Year:  1817
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 908.63it/s]
File Saved!
Year:  1818
(6, 3)
Started training...
100%|██████████| 1000/1000 [00:01<00:00, 570.97it/s]
File Saved!
Year:  1750
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3073.70it/s]
File Saved!
Year:  1751
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 6386.42it/s]
File Saved!
Year:  1752
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1637.17it/s]
File Saved!
Year:  1753
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2109.53it/s]
File Saved!
Year:  1754
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2863.76it/s]
File Saved!
Year:  1755
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3932.95it/s]
File Saved!
Year:  1756
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3044.45it/s]
File Saved!
Year:  1757
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 5721.61it/s]
File Saved!
Year:  1758
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2091.78it/s]
File Saved!
Year:  1759
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3538.17it/s]
File Saved!
Year:  1760
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3222.46it/s]
File Saved!
Year:  1761
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 4505.83it/s]
File Saved!
Year:  1762
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 6345.97it/s]
File Saved!
Year:  1763
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3525.32it/s]
File Saved!
Year:  1764
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 4052.66it/s]
File Saved!
Year:  1765
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2887.04it/s]
File Saved!
Year:  1766
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 4108.47it/s]
File Saved!
Year:  1767
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3290.78it/s]
File Saved!
Year:  1768
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2764.64it/s]
File Saved!
Year:  1769
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3224.03it/s]
File Saved!
Year:  1770
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2611.14it/s]
File Saved!
Year:  1771
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 5591.08it/s]
File Saved!
Year:  1772
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2342.13it/s]
File Saved!
Year:  1773
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1390.68it/s]
File Saved!
Year:  1774
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2327.67it/s]
File Saved!
Year:  1775
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 4463.49it/s]
File Saved!
Year:  1776
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 1388.75it/s]
File Saved!
Year:  1777
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 4717.68it/s]
File Saved!
Year:  1778
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3689.33it/s]
File Saved!
Year:  1779
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 4463.93it/s]
File Saved!
Year:  1780
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 6401.45it/s]
File Saved!
Year:  1781
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 5334.53it/s]
File Saved!
Year:  1782
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 3608.22it/s]
File Saved!
Year:  1783
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 2848.76it/s]
File Saved!
Year:  1784
(1, 3)
Started training...
100%|██████████| 1000/1000 [00:00<00:00, 5180.85it/s]
File Saved!
In [ ]: